import axios from 'axios';
import querystring from 'querystring';
interface IGet {
  pageSize?: string; //每页显示条数
  pageNum?: string; //当前页码
  sortField?: string; //	排序属性名
  sortOrder?: string; //	排序方式
  createTimeFrom?: string; //创建开始时间
  createTimeTo?: string; //创建结束时间
  roleName?: string; //	角色名称
}

interface IAdd {
  roleName: string; //	角色名称
  remark?: string; //角色描述
  menuId: string; //	菜单 ID（例如：1,2,58）
}

interface IUpdate {
  roleName: string; //	角色名称
  remark?: string; //	角色描述
  roleId: string; //	角色 ID
  menuId: string; //	菜单 ID
}

export const getRole = (params?: IGet) => axios.get('/role', { params });

export const delRole = (roleId: string) => axios.delete(`/role/${roleId}`);

export const addRole = (data: IAdd) =>
  axios({
    url: '/role',
    method: 'POST',
    data: querystring.stringify({ ...data }),
  });

export const updateRole = (data: IUpdate) =>
  axios.put('/role', querystring.stringify({ ...data }));

export const getMenuByRoleId = (roleId: string) =>
  axios.get(`/role/menu/${roleId}`);
